$(function () {
    // 设置初始账号密码
    let newUser = JSON.parse(localStorage.getItem("user"))
    if(newUser===null){
        let initial = [{
            user: "admin",
            email: "admin@email.com",
            pwd: "123456"
        }]
        localStorage.setItem("user", JSON.stringify(initial))
    }
    // 判断跳转后状态
    let state = decodeURIComponent(location.search).slice(7)
    if (state==="4"){
        $(".changeForm").show().siblings("form").hide()
    }
    // 加载完成后判断上次是否选中记住
    let remembers = JSON.parse(localStorage.getItem("remember"))
    if (remembers !== null) {
        if (remembers.reme) {
            $(".user").val(remembers.user)
            $(".password").val(remembers.pwd)
            $(".checkBox1").prop("checked", true)
        }
    }
    // form表单之间切换
    $(".toggleBtn").on("click", function () {
        $(".loginForm,.registerForm").toggle()
    })
    $(".forGetBtn").on("click", function () {
        $(".forgetForm,.changeForm").toggle()
        random($(".random"))
    })
    $(".forgetText").on("click", function () {
        $(".loginForm,.emailText").hide()
        $(".forgetForm").show()
        random($(".random"))
    })

    function random(a) {
        for (let i = 0; i < a.length; i++) {
            a.eq(i).text(parseInt(Math.random() * 10))
        }
    }

    // 登录查询
    function loginFn() {
        let newUser = JSON.parse(localStorage.getItem("user"))
        for (const item in newUser) {
            if (newUser[item].user === $(".user").val() && $(".user").val() !== "") {
                return false
            }else{
                return true
            }
        }
    }

    // 登录按钮点击判断
    let num = 4
    let pwdNum = false
    $(".immeLogin").on("click", function () {
        let newUser = JSON.parse(localStorage.getItem("user"))
        for (let i = 0; i < newUser.length + 1; i++) {
            // $(".checkBox1").prop("checked")
            if ($(".user").val() === "") {
                $(".reminderUser").show()
            } else {
                $(".reminderUser").hide()
            }
            if ($(".password").val() === "") {
                $(".reminderPwd").show()
            } else {
                $(".reminderPwd").hide()
            }
            if ($(".user").val() === newUser[i].user || $(".user").val() === newUser[i].email && $(".password").val() === newUser[i].pwd) {
                if ($(".checkBox1").prop("checked")) {
                    localStorage.removeItem("remember")
                    let str = {
                        reme: true,
                        user: newUser[i].user,
                        pwd: newUser[i].pwd
                    }
                    localStorage.setItem("remember", JSON.stringify(str))
                } else {
                    localStorage.removeItem("remember")
                }
                localStorage.setItem("login", JSON.stringify({
                    login: true,
                    user: newUser[i].user
                }))
                window.location.href = `./tea.html`;
                $(".reminderUser,.reminderPwd").hide()
                return;
            }
            if (!loginFn()) {
                $(".reminderUser").show().text(`无效的账户或密码不正确。您还有${num}次尝试机会。`)
                num--
                if (num === -1) {
                    $(".reminderUser").show().text(`无效的账户或密码不正确。您的账号已经被锁定。`)
                    num = 0
                    pwdNum = true
                    clearTimeout(timeFn)
                    setTimeout(timeFn, 6000)
                }
                if (pwdNum) {
                    $(".reminderUser").hide()
                    $(".reminderPwd").show().text("由于连续输入错误密码次数过多，您的账号已经被暂时锁定，请10分钟后再试。")
                }
                return;
            }
        }
    })

    function timeFn() {
        num = 4
    }

    // 查询缓存数据
    function changeFn() {
        let newUser = JSON.parse(localStorage.getItem("user"))
        if (newUser===null){
           return true
        }
        for (const item in newUser) {
            if (newUser[item].user !== $(".registerinp").eq(0).val()) {
                return true
            }
        }
    }

    // 注册功能
    $(".registerBtn").on("click", function () {
        let newUser = JSON.parse(localStorage.getItem("user"))
        if (newUser === null) {
            newUser = []
        }
        if (changeFn()) {
            if ($(".registerinp").val() !== "" && $(".regisCheck").prop("checked")) {
                newUser.push({
                    user: $(".registerinp").eq(0).val(),
                    email: $(".registerinp").eq(1).val(),
                    pwd: $(".registerinp").eq(2).val()
                })
                localStorage.setItem("user", JSON.stringify(newUser))
                $(".loginForm").show().siblings("form").hide()
                let str = $(".registerinp").eq(1).val().slice(0, 2) + "***" + $(".registerinp").eq(1).val().slice($(".registerinp").eq(1).val().lastIndexOf("@"))
                $(".emailText").show().text(`我们已经将验证链接发送至您的注册邮箱${str}。请查看您的邮箱（包括垃圾箱，有时系统会误报为垃圾邮件）。`)
            }
        }
    })
})